package com.redxiii.spike.engine;

import java.io.Serializable;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Map;
import java.util.Set;

import com.redxiii.spike.api.communication.CommunicationService;
import com.redxiii.spike.api.communication.SecureChannelService;

/**
 * @author Daniel Filgueiras
 * @since 19/06/2011
 */
public class CoreSettings implements Serializable {

	private static final long serialVersionUID = 1L;
	
	private Class<? extends CommunicationService> service;
	private Class<? extends SecureChannelService> secureChannel;
	private Map<String,Class<?>> handlerAlias = new HashMap<String, Class<?>>();
	private Set<Class<?>> handlerAutoStart = new HashSet<Class<?>>();
	private boolean warnUnanswered;
	
	public Map<String, Class<?>> getHandlerAlias() {
		return handlerAlias;
	}
	public void setHandlerAlias(Map<String, Class<?>> handlerAlias) {
		this.handlerAlias = handlerAlias;
	}
	public Set<Class<?>> getHandlerAutoStart() {
		return handlerAutoStart;
	}
	public void setHandlerAutoStart(Set<Class<?>> handlerAutoStart) {
		this.handlerAutoStart = handlerAutoStart;
	}
	public Class<? extends CommunicationService> getService() {
		return service;
	}
	public void setService(Class<? extends CommunicationService> service) {
		this.service = service;
	}
	public Class<? extends SecureChannelService> getSecureChannel() {
		return secureChannel;
	}
	public void setSecureChannel(Class<? extends SecureChannelService> secureChannel) {
		this.secureChannel = secureChannel;
	}
	public boolean isWarnUnanswered() {
		return warnUnanswered;
	}
}
